Storyteller 2 Data Exporter - Stable Migration Build

RECOMMENDED SAFE WORKFLOW
Before migrating, back up your existing Storyteller 2 project. For the safest workflow, create a separate Unity project, install Storyteller 2 there, and import or copy the Story, Template and SceneData assets you want to migrate. Run the migration exporter from this separate project so your active game project is not affected.

Install these files into that Storyteller 2 migration project.
Open: Tools > Storyteller > Export For Storyteller 3

Exports selected Story, Template and Game Bridge SceneData assets to a .st2upgrade archive.

DATA COVERAGE
- Captures every Unity-serializable field on every selected Story/Template/SceneData ScriptableObject and node subasset.
- Preserves UIDs and internal Unity object relationships by stable migration IDs.
- Captures nested serializable classes/lists including Scenes, CharacterBios, EnvironmentInformation, personality traits, route/link data and localized lists.
- Calls OnBeforeSerialize before capture when supported.

MEDIA
- Existing <Story Name> Audio Files and <Story Name> Image Files folders are copied byte-for-byte, including .meta files.
- Storyteller 2 Stories that used SaveImagesToStoryFile may contain Texture2D subassets instead of an Image Files folder. Those embedded textures are exported as PNG fallback payloads so cover/scene/character/environment/storyboard references are not lost.
- Audio files are never decoded or re-encoded by this migration tool.
- Missing optional Audio/Image folders do not create warnings by themselves.

ZIP compression explicitly uses:
System.IO.Compression.CompressionLevel.Optimal

Unity scenes, prefabs, Interaction components, UnityEvents and custom C# scripts are intentionally not exported.
